Persistent Cache-oblivious Streaming Indexes
نویسنده
چکیده
In [SPAA2007], Bender et al. define a streaming B-tree (or index) as one that supports updates in amortized o(1) IOs, and present a structure achieving amortized O((logN)/B) IOs and queries in O(logN) IOs. We extend their result to the partially-persistent case. For a version v, let Nv be the number of keys accessible at v and N be the total number of updates. We give a data structure using space O(N), supporting updates to a leaf version v with O((logNv)/B) amortized IOs and answering range queries returning Z elements with O(logNv + Z/B) IOs on average (where the average is over all queries covering disjoint key ranges at a given version). This is the first persistent ‘streaming’ index we are aware of, i.e. that supports updates in o(1) IOs and supports efficient range queries.
منابع مشابه
Filesystems for Streaming Databases
Workloads for high-performance streaming databases often contain many writes of small data blocks (for example, of metadata) followed by large subrange queries. Most of today’s file systems and databases either cannot provide adequate performance for the write phase, the read phase, or both. The supercomputing technologies group at MIT CSAIL has been investigating cache-aware and cache-obliviou...
متن کاملJ ul 2 01 4 Cache - Oblivious Persistence
Partial persistence is a general transformation that takes a data structure and allows queries to be executed on any past state of the structure. The cache-oblivious model is the leading model of a modern multi-level memory hierarchy. We present the first general transformation for making cache-oblivious model data structures partially persistent.
متن کاملCache-Oblivious Persistence
Partial persistence is a general transformation that takes a data structure and allows queries to be executed on any past state of the structure. The cache-oblivious model is the leading model of a modern multi-level memory hierarchy. We present the first general transformation for making cache-oblivious model data structures partially persistent.
متن کاملFunnel Heap - A Cache Oblivious Priority Queue
The cache oblivious model of computation is a two-level memory model with the assumption that the parameters of the model are unknown to the algorithms. A consequence of this assumption is that an algorithm efficient in the cache oblivious model is automatically efficient in a multi-level memory model. Arge et al. recently presented the first optimal cache oblivious priority queue, and demonstr...
متن کاملA Comparison of Cache Aware and Cache Oblivious Static Search Trees Using Program Instrumentation
An experimental comparison of cache aware and cache oblivious static search tree algorithms is presented. Both cache aware and cache oblivious algorithms outperform classic binary search on large data sets because of their better utilization of cache memory. Cache aware algorithms with implicit pointers perform best overall, but cache oblivious algorithms do almost as well and do not have to be...
متن کاملذخیره در منابع من
با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید
عنوان ژورنال:
- CoRR
دوره abs/1707.08186 شماره
صفحات -
تاریخ انتشار 2017